博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
laravel中的plicy授权方法:
阅读量:6442 次
发布时间:2019-06-23

本文共 1125 字,大约阅读时间需要 3 分钟。

1.用命令新建policy:

php artisan make:policy PostPolicy

  

2.在app/Policies/PostPolicy.php中添加处理文件的权限的方法:

//修改:    public function update(User $user, Post $post)    {        return $user->id == $post->user_id;    }    //删除权限:    public function delete(User $user, Post $post)    {        return $user->id == $post->user_id;    }

  

控制器中,添加权限限制:

//更新文章:    public function update(Post $post)    {        //验证:        $this->validate(request(), [            'title' => 'required|string|max:100|min:10',            'content' => 'required|string|min:4'        ]);        $this->authorize('update', $post);        //逻辑:        $post->title = \request('title');        $post->content = \request('content');        $post->save();        return redirect("/posts/{$post->id}");    }    //删除逻辑:    public function delete(Post $post)    {        $this->authorize('delete', $post);     //TODD 用户的权限验证:     $post->delete();     return redirect("/posts");   }

  

在视图中,对授权的使用:

{
{$post->title}}

@can('update',$post)
@endcan @can('delete',$post)
@endcan

  

 

转载地址:http://etdwo.baihongyu.com/

你可能感兴趣的文章
python3导入paramiko模块
查看>>
软件项目送上门来了,还要学会说"不",接了项目拿了定金噩梦才刚刚开始
查看>>
循环、迭代、遍历和递归
查看>>
忘记mysql的root密码
查看>>
使用JavaScript 和 CSS 实现图像缩放和剪裁(转)
查看>>
我的友情链接
查看>>
Code Kata 5
查看>>
RHCE_LAB(4)GRUB提升安全性保护root密码安全
查看>>
Zabbix实现微信平台报警----基于zabbix3.0.4
查看>>
android 安全讲座第二层 使用AndBug调试Android Java Bytecode
查看>>
css3 Gradients 线性渐变
查看>>
ucfirst() 函数
查看>>
bootstrap-导航条层次的导航
查看>>
git rm使用
查看>>
xss***代码
查看>>
Python学习网站
查看>>
mybatis基础(一)
查看>>
Python的Django框架中的Context使用
查看>>
我的友情链接
查看>>
linux常用命令
查看>>